package com.anjubao.parking.municipal.parkinglot.model;

import com.anjubao.parking.municipal.common.utils.U;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 停车车位统计表
 * @author anjubao
 */
@TableName(value = "parking_stat_slot")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Data
public class ParkingStatSlot implements Serializable{

  /**
   * 主键id
   */
  @TableId(type = IdType.INPUT)
  private long id;

  /**
   * 停车场ID
   */
  private long parkingLotId;

  /**
   * 停车场编号
   */
  private String parkingLotCode;

  /**
   *停车场名称
   */
  private String parkingLotName;

  /**
   *停车场类型 1:封闭式,2:路内
   */
  private Integer parkingLotType;

  /**
   *停车场所在省份ID
   */
  private Integer parkingLotProvinceId;

  /**
   *停车场所在省份名称
   */
  private String parkingLotProvinceName;

  /**
   *停车场所在城市ID
   */
  private Integer parkingLotCityId;

  /**
   *停车场所在城市名称
   */
  private String parkingLotCityName;

  /**
   *停车场所在区域ID
   */
  private Integer parkingLotDistrictId;


  /**
   *停车场所在区域名称
   */
  private String parkingLotDistrictName;

  /**
   * 停车场总车位数
   */
  private Integer parkingLotTotalSlots;

  /**
   * 空闲车位数
   */
  private Integer freeSlots;

  /**
   * 已使用车位数
   */
  private Integer usedSlots;

  /**
   * 统计时间
   */
  private LocalDateTime statTime;

  /**
   * 创建时间
   */
  private LocalDateTime createTime;

  @Override
  public String toString() {
    return U.json(this);
  }
}
